Channel estimation for millimeter-wave communication/data link and the corresponding codebook design

ABSTRACT

The channel estimation method for millimeter-wave communication includes virtual multipath acquisition and sparse reconstruction. In the virtual multipath acquisition stage, instead of searching the real multipath components (MPCs), the virtual representation of the real MPCs is derived, and the hierarchical search is utilized to acquire the virtual MPCs based on a normal limited-resolution codebook. In the sparse reconstruction stage, the real MPCs are reconstructed from the virtual MPCs acquired in the virtual multipath acquisition stage. An enhanced sub-array scheme is used to design a hierarchical codebook under a strict constant-modulus constraint. The designed codebook can be used for both analog and hybrid beamforming/combining devices. The training overhead of channel estimation and the complexity of the search are significantly reduced, and the size of the dictionary matrix is greatly reduced by exploiting the results of the virtual multipath acquisition.

FIELD OF THE INVENTION

The invention belongs to the technical field of millimeter-wave (mmWave)communication. Specifically, the invention refers to channel estimationfor mmWave communication based on virtual multipath acquisition andsparse reconstruction.

DESCRIPTION OF RELATED ART

Recently, with the rapid development of wireless communicationtechnology, wireless communication has played a critical role in ourlives. However, due to the increasing bandwidth requirement of wirelesscommunication, spectrum resources in low frequency band are becomingincreasingly scarce. The mmWave communication has drawn global attentionin the past few years because of its abundant frequency resources.

However, mmWave communication is also facing sonic technical challenges.According to the classic Fries formula, the mmWave band has an extremelyhigh path loss compared to low frequency band. To bridge the link budgetgap due to the path loss in the mmWave band, and meanwhile to fulfil thelow hardware cost requirement, analog beamforming/combining is usuallypreferred, wherein all the antennas share a single radio-frequency (RF)chain and have constant-modulus (CM) constraint on their weights.Meanwhile, a hybrid analog/digital preceding/combining structure hasalso been proposed to realize multi-stream/multiuser transmission,wherein a small number of RF chains are tied to a large antenna array.Subject to the beamforming/combining structures, the conventionalchannel estimation methods developed for classic multiple-inputmultiple-output (MIMO) communications is rather inefficient for mmWavecommunication due to high pilot overhead as well as high computationalcost. Instead, two approaches, i.e., hierarchical search and compressedsensing (CS), are exploited in general to acquire necessary channelstate information (CSI) with affordable overhead.

To enable hierarchical search, a coarse sub-codebook may be defined witha small number of coarse sectors (or low-resolution beams) covering theintended angle range, while a fine sub-codebook may be defined with alarge number of fine (or high-resolution) beams covering the sameintended angle range. A coarse sector may have the same coverage as thatof multiple fine beams together. A divide-and-conquer search may then becarried out across the hierarchical codebook, by finding the best sectorfirst on the low-resolution codebook level, and then finding the bestbeam on the high-resolution codebook level, while the besthigh-resolution beam is encapsulated in the best sector. Thehierarchical search method is time efficient and can achieve a highdetection rate to acquire a multipath component (MPC). However, it isusually limited to acquisition of only one single MPC due to the limitedangle resolution of the codebook.

Since mmWave channel is generally sparse in the angle/spatial domain,the CS approach is also an attractive candidate. Different from thehierarchical search method, the CS based approaches are open-looped,which means the pilot overhead does not increase in the multi-user case.However, the performance of the CS based schemes is highly dependent onthe number of measurements. To achieve satisfactory estimationperformance, the training overhead is in fact considerable. Therefore,Alkhateeb et al. proposed an adaptive CS (ACS) method, wherein ahierarchical codebook was also designed to reduce the required number ofmeasurements. Although the ACS method can reduce the overhead to someextent compared with the pure CS method, by exploiting an iterativetraining approach analogous to the hierarchical search, it requires amoderate to large number of RF chains, which may make it less attractivefor devices with only a few RF chains or with an analog beamforming/combining structure.

SUMMARY OF THE INVENTION

To achieve fast and accurate channel estimation for mmWavecommunication, this invention provides a virtual multipath acquisitionand sparse reconstruction (VMA-SR) method, which can be used for boththe analog and hybrid beamforming/combining structures.

The proposed VMA-SR approach can be divided into two stages: virtualmultipath acquisition (VMA) and sparse reconstruction (SR).

In the first stage, instead of searching the real MPCs, this inventionderives the virtual representation of the real MPCs, and exploits thehierarchical search to acquire the virtual MPCs based on a normallimited-resolution codebook.

In this stage, the original L real MPCs are represented by 4L virtualMPCs, and most importantly, the transmitter (Rx) and receiver (Tx)steeling vectors of the 4 virtual MPCs, corresponding to one single realMPC, are two adjacent basis vectors within the angle of arrival (AoA)and the angle of departure (AoD) domains, respectively.

In the second stage, the real MPCs are reconstructed from the virtualMPCs acquired in the first stage.

In this SR stage, let the estimated cos (AoA) and the estimated cos(AoD) of the l-th MPC be denoted as {circumflex over (θ)}_(l) and{circumflex over (ψ)}_(l), respectively, then the uncertainty range ofthe l-th cos (AoA) and the l-th cos (AoD) should be

${\left\lbrack {{{\hat{\theta}}_{\ell} - \frac{2}{N_{r}}},{{\hat{\theta}}_{\ell} + \frac{2}{N_{r}}}} \right\rbrack\mspace{14mu}{{and}\mspace{14mu}\left\lbrack {{{\hat{\psi}}_{\ell} - \frac{2}{N_{t}}},{{\hat{\psi}}_{\ell} + \frac{2}{N_{t}}}} \right\rbrack}},$respectively, where N_(r) and N_(t) are the numbers of antennas at theRx and Tx, respectively. By sampling the angle range

$\left\lbrack {{{\hat{\theta}}_{\ell} - \frac{2}{N_{r}}},{{\hat{\theta}}_{\ell} + \frac{2}{N_{r}}}} \right\rbrack$with an interval 2/(KN_(t)) and the angle range

$\left\lbrack {{{\hat{\psi}}_{\ell} - \frac{2}{N_{t}}},{{\hat{\psi}}_{\ell} + \frac{2}{N_{t}}}} \right\rbrack$with an interval 2/(KN_(t)), respectively, where K is the over-samplingfactor, this invention can obtain the reduced Rx and Tx candidateantenna weight vectors (AWVs) Ā_(r) and Ā_(t).

Then the channel matrix H can be approximately expressed asH=Ā_(r)ΣĀ_(t) ^(H), where Σ is a sparse matrix with every column andevery row thereof having at most one nonzero element and with thenonzero elements corresponding to the channel coefficients λ_(l), andthe superscript H denotes conjugate transpose.

Then the virtual channel obtained through the VMA stage can be used toestablish a sparse reconstruction problem to solve the real MPCs.

The sparse reconstruction problem is formulated as follows:

$\underset{\lambda_{\ell},\theta_{\ell},\psi_{\ell}}{minimize}{{{{vec}\left( H_{fd} \right)} - {\left( {{\overset{\_}{A}}_{t}^{*} \otimes {\overset{\_}{A}}_{r}} \right){{vec}(\Sigma)}}}}_{2}$subject  tovec(Σ)₀ = L,where H_(fd) denotes the virtual channel matrix obtained through the VMAstage. By solving this problem, such parameters as channel coefficientsλ_(l), angles of arrival θ_(l) and angles of departure ψ_(l)(l=1,2, . .. , L) are obtained. Then such parameters can be used to reconstruct theoriginal channel H.

The advantages of the invention are as follows:

(1) In the VMA stage, the virtual MPCs corresponding to a single MPC areall acquired in each search based on the proposed hierarchical searchalgorithm. As a result, the training overhead of channel estimation andthe complexity of the search are significantly reduced.

(2) In the SR stage, the size of the dictionary matrix is greatlyreduced by exploiting the results of the VMA stage, significantlyreducing the computational complexity.

(3) In the VMA stage, this invention provides an enhanced sub-arrayscheme to design a hierarchical codebook under a strict CM constraint,which can be used for low complexity phased array. And the designedcodebook can be used for both analog and hybrid beamforming/combiningdevices.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates the Fejér kernel functions for an MPC with AoA=0 andAoD= 1/16 (in the cosine angle domain), where N_(t)=N_(r)=8;

FIG. 2 illustrates the 4 virtual MPCs for a real MPC with AoA=0 and AoD= 1/16 (in the cosine angle domain), where N_(t)=N_(r)=8;

FIG. 3 shows the beam coverage of a hierarchical codebook with 16antennas;

FIG. 4 illustrates a simplified block diagram of the signal measurementsystem for the VMA stage of the VMA-SR method according to the presentapplication;

FIG. 5 illustrates the RF phased array of the transmitter of the signalmeasurement system;

FIG. 6 illustrates the RF phased array of the receiver of the signalmeasurement system;

FIG. 7 shows the flowchart of a measurement process;

FIG. 8 shows the beam patterns of the proposed enhanced sub-array schemewith a uniform linear array (ULA) codebook, where N=64 ;

FIG. 9 shows the beam patterns of the codewords in the first layer of auniform planar array (UPA) codebook, where the size of the UPA is 8×8;

FIG. 10 shows the effect of the over-sampling factor K on the detectionperformance of the proposed VMA-SR approach;

FIG. 11 shows the effect of the over-sampling factor K on the meansquared error (MSE) performance of the proposed VMA-SR approach;

DETAILED DESCRIPTION OF THE INVENTION

The invention will now be further described referring to the attachedwings and illustrative examples.

Before the virtual multipath acquisition and sparse reconstruction(VMA-SR) approach of the present application is described, the systemmodel and existing channel estimation methods are first introduced.

A. System Models

Letting s denote a training signal with unit average power, when ananalog beamforming/combining structure is adopted at the transmitter(Tx) and receiver (Rx), the received signal y is expressed asy=√{square root over (P)}w _(r) ^(H) Hw _(t) s+z,   (1)where P is the average transmission power, w_(r) and w_(t) are Rx and Txantenna weight vectors (AWVs), respectively, H is the channel matrix,and z is the Gaussian white noise. Let N_(r) and N_(t) denote thenumbers of antennas at the Rx and Tx, respectively. Then w_(r) and w_(t)are N_(r)×1 and N_(t)×1 vectors, respectively, with constant modulus(CM) and unit 2-norm, i.e., |w_(r)|=1/√{square root over (N_(r))} and|w_(t)|=1/√{square root over (N_(t))}. In the case that a hybridbeamforming/combining structure is adopted at the Rx and Tx, w_(r) andw_(t) will be the product of a digital beamforming/combining vector andan analog preceding/combining matrix with constant modulus.

It is known that mmWave channels have limited scattering, and multipathcomponents (MPCs) are mainly generated by reflections. Different MPCshave different angles of departure (AoDs) and angles of arrival (AoAs).Without loss of generality, this invention adopts the directionalchannel model here, which is relevant to the geometry of antenna arrays.When using uniform linear array (ULA) with a half-wavelength antennaspace, an mmWave channel can be expressed as

$\begin{matrix}{{H = {\sum\limits_{\ell = 1}^{L}\;{\lambda_{\ell}{a_{r}\left( \theta_{\ell} \right)}{a_{t}^{H}\left( \psi_{\ell} \right)}}}},} & (2)\end{matrix}$where λ_(l) is the complex channel coefficient of the l-th path and

${{{\mathbb{E}}\left( {\sum\limits_{\ell = 1}^{L}\;{\lambda_{\ell}}^{2}} \right)} = {N_{r}N_{t}}},$is the number of MPCs, a_(r)(.) and a_(t) (.) are the Rx and Tx steeringvector functions, respectively, defined as

$\begin{matrix}{{{a_{r}(\theta)} = {\frac{1}{\sqrt{N_{r}}}\left\lbrack {e^{j\;{\pi 0\theta}},e^{j\;{\pi 1\theta}},\ldots\mspace{14mu},e^{j\;{\pi{({N_{r} - 1})}}\theta}} \right\rbrack}^{T}},{{a_{t}(\psi)} = {\frac{1}{\sqrt{N_{t}}}\left\lbrack {e^{j\;{\pi 0\psi}},e^{j\;{\pi 1\psi}},\ldots\mspace{14mu},e^{j\;{\pi{({N_{t} - 1})}}\psi}} \right\rbrack}^{T}},} & (3)\end{matrix}$where θ and ψ are cos (AoD) and cos (AoA), respectively. Specifically,θ_(l) and ψ_(l) are cos (AoD) and cos (AoA) of the l-th path,respectively. Let θ _(l) and ψ _(l) denote the real AoD and AoA of thel-th path, respectively; then we have θ_(l)=cos (θ _(l)) and ψ_(l)=cos(ψ _(l)). Therefore, θ_(l) and areψ_(l) within the range of [−1,1 ]. Forconvenience, in the rest of this invention, θ_(l) and ψ_(l) are calledAoAs and AoDs, respectively. The superscript T denotes transpose.

B. Channel Estimation

To estimate the channel, we need to make some measurements based on thebeamforming/combining structure shown in (1): In each measurement, Txwould transmit a training signal with a Tx AWV, while Rx would receivethe signal with an Rx AWV. If the conventional least-square (LS) methodis adopted to estimate the channel, at least N_(r)N_(t) measurements areneeded, which is unaffordable in mmWave communication where N_(r) andN_(t) are large in general. To reduce the pilot overhead, there are twomain candidate approaches: the compressed sensing (CS) based method andthe hierarchical search method. This invention briefly introduces themfor comparison with the proposed approach.

The CS Approach: Based on the signal model in (1), multiple measurementsmay be made with different Tx AWVs [w_(t1), w_(t2), . . . , w_(tε) _(t)]

W_(t) and Rx AWVs [w_(r1), w_(r2), . . . , w_(rε) _(r) ]

W_(r), where ε_(r) is the number of the different Tx AWVs and ε_(r) isthe number of the different Rx AWVs and assuming, without loss ofgenerality, s=1, thenY=√{square root over (P)}W _(r) ^(H) HW _(t) +Z,   (4)where Z is the noise matrix. By sampling the AoA/AoD domains withsufficiently high resolution δ, we can obtain

$A_{r} = {\left\lbrack {{a_{r}\left( {{- 1} + \frac{\delta}{2}} \right)},{a_{r}\left( {{- 1} + \frac{3\delta}{2}} \right)},\ldots}\mspace{14mu} \right\rbrack\mspace{14mu}{and}}$$A_{t} = {\left\lbrack {{a_{t}\left( {{- 1} + \frac{\delta}{2}} \right)},{a_{t}\left( {{- 1} + \frac{3\delta}{2}} \right)},\ldots}\mspace{14mu} \right\rbrack.}$Then H can be approximately expressed as H=A_(r)ΣA_(t) ^(H), where Σ isa sparse matrix with every column and every row thereof having at mostone nonzero element and with the nonzero elements corresponding to thechannel coefficients λ_(l). Substituting H in (1) with this expressionand vectorizing Y, we have

$\begin{matrix}\begin{matrix}{{{vec}(Y)} = {{vec}\left( {{\sqrt{P}W_{r}^{H}A_{r}\Sigma\; A_{t}^{H}W_{t}} + Z} \right)}} \\{= {{\sqrt{P}\left( {\left( {A_{t}^{H}W_{t}} \right)^{T} \otimes \left( {W_{r}^{H}A_{r}} \right)} \right){{vec}(\Sigma)}} + {{vec}(Z)}}} \\{{\overset{\Delta}{=}{{\sqrt{P}{{Qvec}(\Sigma)}} + {{vec}(Z)}}},}\end{matrix} & (5)\end{matrix}$where ⊗ is the Kronecker product. Since ∥vec(Σ)∥₀=L<<N_(r)N_(t), sparserecovery tools can be adopted to estimate H, where the dictionary matrixQ can be obtained by randomly setting the Tx and Rx training AWVs ineach measurement as [w_(r)]_(k) ∈ {e^(jθ)/√{square root over (N_(r))}}and [w_(t)]_(m) ∈ {e^(jθ)/√{square root over (N_(t))}} with uniformlydistributed phase θ. Note that as the number of candidate vectors, i.e.,the number of columns of Q, is large, the computational complexity ofthe CS approach is high. In addition, the total number of measurementsis T_(CS)=ε_(r)ε_(t). And when T_(CS) is not large enough, theperformance of the CS approach is not satisfactory. The adaptivecompressed sensing (ACS) scheme proposed by Alkhateeb et al. can reducethe training overhead to some extent, but multiple RF chains arerequired to guarantee satisfactory performance.

The Hierarchical Search Approach: The hierarchical search method isbased on the structure of H. As there are L MPCs to be found, it isnatural to search them one by one, and a hierarchical codebook can beused to reduce the search time. Different from the single-path search,for multi-path search, the contribution of the formerly found MPCsshould be subtracted from the received signal during the search of eachMPC. For instance, suppose that we have estimated the coefficients, AoAsand AoDs of the first L_(f) MPCs, denoted by {circumflex over (λ)}_(i),{circumflex over (θ)}_(i), {circumflex over (ψ)}_(i) for i=1,2, . . . ,L_(f), then in the search of the (L_(f)+1)-th MPC, in each measurementwe can compute the decision variable as

$\begin{matrix}\begin{matrix}{\overset{\_}{y} = {\underset{\underset{Measured}{︸}}{{\sqrt{P}w_{r}^{H}{Hw}_{t}} + z} - \underset{\underset{FormerContribution}{︸}}{\sqrt{P}w_{r}^{H}\left( {\sum\limits_{i = 1}^{L_{f}}\;{{\hat{\lambda}}_{i}{a_{r}\left( {\hat{\theta}}_{i} \right)}{a_{t}^{H}\left( {\hat{\psi}}_{i} \right)}}} \right)w_{t}}}} \\{= {{\sqrt{P}{w_{r}^{H}\left( {\sum\limits_{i = {L_{f} + 1}}^{L}\;{\lambda_{i}{a_{r}\left( \theta_{i} \right)}{a_{t}^{H}\left( \psi_{i} \right)}}} \right)}w_{t}} + z +}} \\{\sqrt{P}{w_{r}^{H}\left( {\sum\limits_{i = 1}^{L_{f}}\;\left( {{\lambda_{i}{a_{r}\left( \theta_{i} \right)}{a_{t}^{H}\left( \psi_{i} \right)}} - {{\hat{\lambda}}_{i}{a_{r}\left( {\hat{\theta}}_{i} \right)}{a_{t}^{H}\left( {\hat{\psi}}_{i} \right)}}} \right)} \right)}w_{t}} \\{{\overset{\Delta}{=}{{\sqrt{P}{w_{r}^{H}\left( {\sum\limits_{i = {L_{f} + 1}}^{L}\;{\lambda_{i}{a_{r}\left( \theta_{i} \right)}{a_{t}^{H}\left( \psi_{i} \right)}}} \right)}w_{t}} + z + I_{res}}},}\end{matrix} & (6)\end{matrix}$where I_(res) is the residual interference. If the AoAs and AoDs areaccurately estimated, the coefficients will also be accuratelyestimated, and I_(res) will be small. Dropping the noise component, wehave

$\begin{matrix}{{\overset{\_}{y} \approx {\sqrt{P}{w_{r}^{H}\left( {\sum\limits_{i = {L_{f} = 1}}^{L}\;{\lambda_{i}{a_{r}\left( \theta_{i} \right)}{a_{t}^{H}\left( \psi_{i} \right)}}} \right)}w_{t}}},} & (7)\end{matrix}$which means the (L_(f)+1)-th MPC can be normally found by using thehierarchical search method. However, if the AoAs and AoDs are notaccurately estimated, there would be significant coefficient errors, andI_(res) will be large. In such a case, the search of the (L_(f)+1)-thMPC will be dramatically affected by the residual interference. That isto say, accurate estimation of the AoAs and AoDs are critical for thehierarchical search method. In practice, the best angle resolution of acodebook for an ULA with N_(A) antennas is 2/N_(A) in general, because asteering vector has an angle resolution of 2/N_(A). Although it ispossible to design a codebook with a much higher resolution so as toaccurately estimate the AoAs and AoDs, it will accordingly increase thesearch time and the storage size of the codebook. More importantly, ahigher angle resolution will further intensify the challenge of phaseshifter design at the mmWave band, which is undesired in mmWavecommunication, where hardware design is already harsh. Hence, thecodebook with the resolution of 2/N_(A) is a normal limited-resolutioncodebook, and the codebook with the resolution higher than 2/N_(A) is ahigh resolution codebook.

In summary, the CS approach can estimate multiple MPCs, but it requiresa large number of measurements; otherwise the performance is notsatisfactory. The hierarchical search method can also estimate multipleMPCs, provided that the angle resolution of the exploited codebook issufficiently high. However, this is undesirable from the perspective ofhardware design for mmWave devices.

To solve the problems in the above approaches, this invention provides aVMA-SR method to quickly and accurately acquire multiple MPCs whileexploiting a normal limited-resolution codebook.

The VMA-SR method according to the present invention has two stages,namely virtual multipath acquisition (VMA) for the first stage andsparse reconstruction (SR) for the second stage.

A. The First Stage: Virtual Multipath Acquisition

I) Virtual Representation of the Real MPCs: First, we sample the AoA andAoD domains with angle resolutions 2/N_(r) and 2/N_(t), respectively,and obtain two sets of steeling vectors:

${U = \left\lbrack {{a_{r}\left( {{- 1} + \frac{1}{N_{r}}} \right)},{a_{r}\left( {{- 1} + \frac{3}{N_{r}}} \right)},\ldots\mspace{14mu},{a_{r}\left( {{- 1} + \frac{{2\; N_{r}} - 1}{N_{r}}} \right)}} \right\rbrack},{V = {\left\lbrack {{a_{t}\left( {{- 1} + \frac{1}{N_{t}}} \right)},{a_{t}\left( {{- 1} + \frac{3}{N_{t}}} \right)},\ldots\mspace{14mu},{a_{t}\left( {{- 1} + \frac{{2\; N_{t}} - 1}{N_{t}}} \right)}} \right\rbrack.}}$It is easy to verify that U^(H)U=I_(N), and V^(H)V=I_(N) _(t) , whichmeans that

$\left\{ {a_{r}\left( {{- 1} + \frac{{2\; k} - 1}{N_{r}}} \right)} \right\}_{{k = 1},2,\ldots\mspace{14mu},N_{r}}\mspace{14mu}{and}\mspace{14mu}\left\{ {a_{t}\left( {{- 1} + \frac{{2\; k} - 1}{N_{t}}} \right)} \right\}_{{k = 1},2,\ldots\mspace{14mu},N_{t}}$constitute an orthogonal base of

^(N) ^(r) and

^(N) ^(t) , respectively. Hence, for arbitrary θ_(l) and ψ_(l) we have

$\begin{matrix}\left\{ {\begin{matrix}{{{a_{r}\left( \theta_{\ell} \right)} = {\sum\limits_{k = 1}^{N_{r}}\;{\alpha_{k,\ell}{a_{r}\left( {{- 1} + \frac{{2\; k} - 1}{N_{r}}} \right)}}}},} \\{{{a_{t}\left( \psi_{\ell} \right)} = {\sum\limits_{k = 1}^{N_{t}}\;{\beta_{k,\ell}{a_{t}\left( {{- 1} + \frac{{2\; k} - 1}{N_{t}}} \right)}}}},}\end{matrix}{where}} \right. & (8) \\\left\{ \begin{matrix}{{\alpha_{k,\ell} = {{a_{r}^{H}\left( {{- 1} + \frac{{2\; k} - 1}{N_{r}}} \right)}{a_{r}\left( \theta_{\ell} \right)}}},} \\{{\beta_{k,\ell} = {{a_{t}^{H}\left( {{- 1} + \frac{{2\; k} - 1}{N_{t}}} \right)}{a_{t}\left( \psi_{\ell} \right)}}},}\end{matrix} \right. & (9)\end{matrix}$

where α_(k,l) denotes the projection of a_(r)(θ_(l)) in the direction ofthe unit vector

${a_{r}\left( {{- 1} + \frac{{2\; k} - 1}{N_{r}}} \right)},$and β_(k,l) denotes the projection of a_(t)(ψ_(l)) in the direction ofthe unit vector

${a_{t}\left( {{- 1} + \frac{{2\; k} - 1}{N_{t}}} \right)}.$

Let f_(r)(x)=|a_(t) ^(H)(θ)a_(r)(θ+x)|, i.e., a Fejér kernel function,which goes to zero quickly by increasing |x|. It is known thatf_(r)(0)=1, and when |x|>1/N_(r), the kernel is far smaller than 1 giventhat N_(r) is large. According to this property, there are only 2elements in {α_(k,l)}_(k−1,2, . . . ,) N_(r) that may have a significantabsolute value, which are α_(I) _(r) _(+(θ) _(l) _(),l) and α_(I) _(t)_(−(θ) _(l) _(),l) with

$\begin{matrix}\left\{ \begin{matrix}{{{I_{r}^{+}\left( \theta_{\ell} \right)} = \left\lbrack {\left( {{N_{r}\left( {\theta_{\ell} + 1} \right)} + 1} \right)/2} \right\rbrack},} \\{{{I_{r}^{-}\left( \theta_{\ell} \right)} = \left\lbrack {\left( {{N_{r}\left( {\theta_{\ell} + 1} \right)} + 1} \right)/2} \right\rbrack},}\end{matrix} \right. & (10)\end{matrix}$where ┌.┐ and └.┘ denote ceil and floor integer operations,respectively. Analogously, there are only 2 elements in{β_(k,l)}_(k=1,2, . . . ,) N_(t) that may have a significant absolutevalue, which are β_(I) _(t) _(+(ψ) _(l) _(),l) and β_(I) _(t) _(−(ψ)_(l) _(),l) with

$\begin{matrix}\left\{ \begin{matrix}{{{I_{t}^{+}\left( \psi_{\ell} \right)} = \left\lbrack {\left( {{N_{t}\left( {\psi_{\ell} + 1} \right)} + 1} \right)/2} \right\rbrack},} \\{{{I_{t}^{-}\left( \psi_{\ell} \right)} = \left\lbrack {\left( {{N_{t}\left( {\psi_{\ell} + 1} \right)} + 1} \right)/2} \right\rbrack},}\end{matrix} \right. & (11)\end{matrix}$

Consequently, we have

$\begin{matrix}{{{a_{r}\left( \theta_{\ell} \right)} \approx {{\alpha_{\ell +}{a_{r}\left( \theta_{\ell +} \right)}} + {\alpha_{\ell -}{a_{r}\left( \theta_{\ell -} \right)}}}},} & (12) \\{{{a_{t}\left( \psi_{\ell} \right)} \approx {{\beta_{\ell +}{a_{t}\left( \psi_{\ell +} \right)}} + {\beta_{\ell -}{a_{t}\left( \psi_{\ell -} \right)}}}},} & (13) \\{where} & \; \\\left\{ \begin{matrix}{{\alpha_{\ell +} = \alpha_{{I_{r}^{+}{(\theta_{\ell})}},\ell}},} & {{\alpha_{\ell -} = \alpha_{{I_{t}^{-}{(\theta_{\ell})}},\ell}},} \\{{\beta_{\ell +} = \beta_{{I_{t}^{+}{(\psi_{\ell})}},\ell}},} & {{\beta_{\ell -} = \beta_{{I_{t}^{-}{(\psi_{\ell})}},\ell}},}\end{matrix} \right. & (14) \\\left\{ \begin{matrix}{{\theta_{\ell +} = {{- 1} + \frac{{2{I_{r}^{+}\left( \theta_{\ell} \right)}} - 1}{N_{r}}}},} & {{\theta_{\ell -} = {{- 1} + \frac{{2{I_{r}^{-}\left( \theta_{\ell} \right)}} - 1}{N_{r}}}},} \\{{\psi_{\ell +} = {{- 1} - {+ \frac{{2{I_{t}^{+}\left( \psi_{\ell} \right)}} - 1}{N_{t}}}}},} & {\psi_{\ell -} = {{- 1} + {\frac{{2{I_{t}^{-}\left( \psi_{\ell} \right)}} - 1}{N_{t}}.}}}\end{matrix} \right. & (15)\end{matrix}$

Finally, we can approximately express H as

$\begin{matrix}{{{H \approx {\sum\limits_{\ell = 1}^{L}{{\lambda_{\ell}\left\lbrack {{\alpha_{\ell +}{a_{r}\left( \theta_{\ell +} \right)}} + {\alpha_{\ell -}{a_{r}\left( \theta_{\ell -} \right)}}} \right\rbrack} \times \left\lbrack {{\beta_{\ell +}{a_{t}\left( \psi_{\ell +} \right)}} + {\beta_{\ell -}{a_{t}\left( \psi_{\ell -} \right)}}} \right\rbrack^{H}}}} = {\sum\limits_{\ell = 1}^{L}{\lambda_{\ell}\left\lbrack {{\alpha_{\ell +}\beta_{\ell +}^{*}{a_{r}\left( \theta_{\ell +} \right)}{a_{t}^{H}\left( \psi_{\ell +} \right)}} + {\alpha_{\ell -}\beta_{\ell +}^{*}{a_{r}\left( \theta_{\ell -} \right)}{a_{t}^{H}\left( \psi_{\ell +} \right)}} + {\alpha_{\ell +}\beta_{\ell -}^{*}{a_{r}\left( \theta_{\ell +} \right)}{a_{t}^{H}\left( \psi_{\ell -} \right)}} + {\alpha_{\ell -}\beta_{\ell -}^{*}{a_{r}\left( \theta_{\ell -} \right)}{a_{t}^{H}\left( \psi_{\ell -} \right)}}} \right\rbrack}}},} & (16)\end{matrix}$where we can find that the original L real MPCs are represented by 4Lvirtual MPCs, and most importantly, the Rx and Tx steering vectors ofthe 4 virtual MPCs, corresponding to one single real MPC, are twoadjacent basis vectors within U and V, respectively. The superscript *denotes conjugate.

FIG. 1 illustrates these properties of an MPC with an AoA of 0 (in thecosine angle domain) and an AoD of 1/16, where N_(t)=N_(r)=16, I_(r)⁺(θ_(l))=1/N_(r), I_(r) ⁻(θ_(l))=−1/N_(r), I_(t) ⁺(ψ_(l))=1/N_(t) andI_(t) ⁻(ψ_(l))=−1/N_(t). The absolute values of α¹⁻, α₁₊, β¹⁻ and β₁₊are also shown in FIG. 1. FIG. 2 shows the 4 virtual MPCs correspondingto the real MPC with an AoA of 0 and an AoD of 1/16, whereN_(t)=N_(r)=8.

Note that different from the real MPCs which have arbitrary AoAs andAoDs, the AoAs and AoDs of the virtual MPCs can be accurately estimatedwith a normal limited-resolution codebook containing the AWVs in U andV, which means that, instead of directly estimating the L real MPCs, wemay estimate the 4L virtual MPCs based on a limited-resolution codebook.Afterwards, we can reconstruct the original L real MPCs based on the 4Lvirtual MPCs.

II) Hierarchical Search of the Virtual MPCs: Since the AoAs and AoDs (inthe cosine angle domain) of the virtual MPCs are within

${\left\{ {{- 1} + \frac{{2k} - 1}{N_{r}}} \right\}_{{k = 1},2,\;\ldots\mspace{11mu},N_{r}}\mspace{14mu}{and}\mspace{14mu}\left\{ {{- 1} + \frac{{2k} - 1}{N_{t}}} \right\}_{{k = 1},2,\;{\ldots\mspace{11mu} N_{t}}}},$respectively, the virtual MPCs can be accurately estimated byhierarchical search with a limited-resolution codebook. For instance,FIG. 3 shows a typical limited-resolution codebook

with N=16 antennas. The codebook has (log₂ N+1) layers. In the k-thlayer, k=0,1,2, . . . , log₂ N, there are 2^(k) codewords of the samebeam width with different steering angles and collectively covering theentire search space in the cosine angle domain. Note that a codeword isactually an AWV used for beamforming. Let w(k,n) denote the n-thcodeword in the k-th layer, n=1, . . . , 2^(k). Then the beam coverageof w(k,n) is approximately the union of the beam coverage of the 2codewords in the (k+1)-th layer, i.e., {w(k+1,2(n−1)+m)}_(m−1,2). Thereare different methods to design such a codebook, and all thehierarchical codebooks designed by different methods can be used tosearch the virtual MPCs, provided that the last-layer codewords aresteering vectors towards

$\left\{ {{- 1} + \frac{{2k} - 1}{N}} \right\}_{{k = 1},2,\;\ldots\mspace{11mu},N}.$

Based on the hierarchical codebook, we next introduce the proposedhierarchical search algorithm to acquire the virtual MPCs, which isshown in Algorithm 1, where w_(t)(.) and w_(r)(.) represent the Tx andRx codewords, respectively.

Algorithm 1: Hierarchical Search of the Virtual MPCs. 1) Initialization:S = log₂ N_(r). /*Assume N_(r) = N_(t) , and calculate the total numberof layers S */ S₀ = 2. /*The initial layer index.*/ H_(fd) = 0. /*Thealready found MPCs.*/ 2) Iteration: for l = 1:L do /*There are Literations in the search process.*/   /*Step 1: Search for the initialTx/Rx codewords.*/    for m = 1:2^(S) ₀ do      for n = 1:2^(S) ₀ do      y(m,n) = {square root over (P)}w_(r)(S₀,n)^(H)Hw_(t)(S₀,m) + z −      w_(r)(S₀,n)^(H)H_(fd)w_(t)(S₀,m)    (m_(t),n_(r)) = arg_((m,n))max | y(m,n)|   /*Step 2: Hierarchical search. The best Tx/Rx codewordpair   w_(t)(S₀,m_(t)) and w_(r)(S₀, n_(r)) acquired in Step 1 aretreated as the   parent codewords for Step 2. */    for s = (S₀ + 1): Sdo     for m = 1,2 do       for n = 1,2 do        y(m,n) = {square rootover (P)}w_(r)(s,2(n_(r) − 1) + n)^(H)Hw_(t)(s,2(m_(t) − 1) + m) +       z − w_(r)(s,2(n_(r) − 1) + n)^(H)H_(fd)w_(t)(s,2(m_(t) − 1) + m)    (a,b) = arg_((m,n)) max | y(m,n)|     m_(t) = 2(m_(t) − 1) + a;n_(r)= 2(n_(r) − 1) + b   /*Step 3: Collection of the virtual MPCs: Acquirethe significant   virtual MPC at the last layer (S -th layer).*/    form = −1,0,1 do     for n = −1,0,1 do       y = {square root over(P)}w_(r)(S,n_(r) + n)^(H)Hw_(t)(S,m_(t) + m) + z       H_(fd) =H_(fd) + yw_(r)(S,n_(r) + n)w_(t)(S,m_(t) + m)^(H) 3) Results: Returnthe virtual channel H_(fd)

There are L iterations in the search process, and the virtual MPCscorresponding to a single MPC are acquired in each iteration. Thehierarchical search algorithm for the VMA-SR method is brieflyillustrated as follows.

(1) Initialization: Calculate the total number of layers S, set theinitial layer index S₀ and initialize the already found MPCs as a zerovector, i.e., H_(fd)=0. (2) Search process: Execute the following threesteps L times.

Step 1: Search for the initial Tx/Rx codewords. As in mmWavecommunication the transmission power is generally limited, thebeamforming training may not start from the 0-th layer, where thecodeword is omni-directional and the gain is low. Instead, thebeamforming training may need to start from a higher layer, e.g., theS₀-th layer, to provide sufficient start-up beamforming gain. In thisprocess, there are 2^(S) ⁰ candidate codewords at both Tx and Rx. Thus,an exhaustive search over all base station (BS) and mobile station (MS)codeword pairs is adopted to search the best Tx/Rx codeword pair, whichare treated as the parent codewords for the following search. m_(t) andn_(r) denote the best Tx/Rx codeword indexes in the S₀-th layer,respectively. Note that when computing y(m,n), the sum of the first twoterms is substituted by the measured value of the corresponding receivedvalue.

Step 2: Hierarchical search. In this process, a layered search isperformed to refine the beam angle step by step, until the mostsignificant virtual UPC is acquired at the last layer (the S-th layer).

The best Tx/Rx codeword pair w_(t)(S₀,m_(t)) and w_(r)(S₀,n_(r))acquired in step 1 are treated as the parent codewords for step 2. Thena layered search is performed from the (S₀+1)-th layer to the S-th layerto acquire the most significant virtual MPC.

In the search for each layer, the best Tx/Rx codeword pair in currentlayer are found according to the following problem:

$\begin{matrix}{{y\left( {m,n} \right)} = \begin{matrix}{{{\sqrt{P}{w_{r}\left( {s,{{2\left( {n_{r} - 1} \right)} + n}} \right)}^{H}{{Hw}_{t}\left( {s,{{2\left( {m_{t} - 1} \right)} + m}} \right)}} + z - {{w_{r}\left( {s,{{2\left( {n_{r} - 1} \right)} + n}} \right)}^{H}H_{fd}{w_{t}\left( {s,{{2\left( {m_{t} - 1} \right)} + m}} \right)}}},{\left( {a,b} \right) = {\underset{({m,n})}{{\arg\mspace{11mu}\max}\;}{{y\left( {m,n} \right)}}}},} & \;\end{matrix}} & (17)\end{matrix}$where m and n are in range of {1,2], and s is the index of the currentlayer. And the best codewords in the current layer are treated as theparent codewords in the next layer, i.e., after (a,b) is acquired,update the best Tx/Rx codeword indexes in the current layer. Note thatwhen computing y(m,n), the sum of the first two terms, √{square rootover (P)}w_(r)(s,2)(n_(r)−1)+n)^(H)Hw_(t)(s,2(m_(t)−1)+m)+z, issubstituted by the measured value of the corresponding received signal.

Step 3: Collection of the virtual MPCs. After the hierarchical search,the most significant virtual MPC is acquired. Since the other 3 virtualMPCs are adjacent to the already found MPC, we measure a ±1 AoA/AoDneighborhood to make sure that the desired virtual MPCs are allcollected. Note that y=√{square root over(P)}w_(r)(S,n_(r)+n)^(H)Hw_(t)(S,m_(t)+m)+z is substituted by themeasured value of the corresponding received signal. With thisoperation, 9 instead of 4 virtual MPCs are actually acquired. Flowever,the other 5 virtual MPCs have much smaller strength compared with the 4desired virtual MPCs, and thus affect little on the results.

As shown in the above steps, in each measurement, Tx would transmit atraining signal with a Tx AWV, while Rx would receive the signal with anRx AWV. Then the received signal y would be measured at the Rx. In step3, after the most significant virtual MPC is acquired, we measure aneighborhood to collect the desired virtual MPCs. Each time a virtualMPC is acquired, the virtual channel H_(fd) is updated. Computing thesum of the collected virtual MPC, the virtual channel is obtained asH_(fd)=H_(fd)+yw_(r)(S,n_(r)+n)w_(t)(S,m_(t) 30 m)^(H), where m and nare in range of {−1,0,1}.

Note that in each iteration, H_(fd) obtained in the current iterationwill be the initial H_(fd) in the next iteration.

In Alrothm 1, it is assumed that N_(t)=N_(r). When N_(t) is differentfrom N_(r), Algorithm 1 may be easily modified as follows. Let S_(t)denote the total number of layers of the Tx codebook and S_(r) denotethe total number of layers of the Rx codebook. If S_(t)<S_(r), in Step 2of Algorithm 1, when the best Tx codeword w_(t)(S_(t),m_(t)) at theS_(t)-th layer is acquired, the layered search of the Rx codebookcontinues to be performed from the (S_(t)+1)-th layer to the S_(r)-thlayer to acquire the best Rx codeword w_(r)(S_(t),m_(r)). IfS_(t)>S_(r), in Step 2 of Algorithm 1, when the best Rx codewordw_(r)(S_(r),m_(r)) at the S_(r)-th layer is acquired, the layered searchof the Tx codebook continues to be performed from the S_(r)+1-th layerto the S_(t)-th layer to acquire the best Tx codewordw_(t)(S_(t),m_(t)).

III) Signal measurement hardware system: In the hierarchical search ofMPCs, when searching the best Tx/Rx codeword pair w_(t) and w_(r) ineach layer, for each candidate codeword pair, the received signal ycorrespondimg to the codeword pair needs to be measured. To facilitateunderstanding of the process of measuring the received signal y, asignal measurement hardware system is described below.

FIG. 4 illustrates a simplified block diagram of the signal measurementsystem. This system includes a transmitter 100 and a receiver 110.

The transmitter 100 includes a digital baseband 101 and an RF phasedarray 105. The digital baseband 101 includes a controller 102, abaseband signal generator 103, and a beam controller 104, wherein thecontroller 102 controls the baseband signal generator 103 to generate abaseband signal s and controls the beam controller 104 to generate theTx codeword w_(t), which is used as the Tx AWV. As shown in FIG. 5, theRF phased array 105 includes an RF chain 501, phase shifters 502, poweramplifiers 503, and transmitting antennas 504, wherein the RF chain 501generates an RF based on the baseband signal s, the phase shifters 502adjust the phase of the RE based on the Tx AWV, the power amplifiers 503increase the output power of the RF, and the signal S is transmitted atthe transmitting antennas 504.

The receiver 110 includes a digital baseband 111 and an RF phased array115. The digital baseband 111 includes a processor 112, a basebandsignal detector 113 and a beam controller 114, wherein the processor 112controls the beam controller 114 to generate the Rx codeword w_(r),which is used as the Rx AWV, and controls the baseband signal detector113 to detect the received signal y, and processes the received signaly. As shown in FIG. 6, the RF phased array 115 includes receivingantennas 601, low noise amplifiers 602, phase shifters 603, an adder 604and an RF chain 605, wherein the receiving antennas 601 receive thesignal S′, the low noise amplifiers 602 enhance the input power of thesignal, the phase shifters 603 adjust the phase of the signal based onthe Rx AWV, the signals from the phase shifters 603 are added by theadder 604 and fed to the RF chain 605 to generate the RE, and the RF isfed to the baseband signal detector 113.

IV) Implementation of Hierarchical Search in Algorithm 1

Hierarchical search algorithm is achieved through multiple measurements.In the search of each layer, for each candidate codeword pair of thecurrent layer, the received signal y corresponding to the codeword pairneeds to be measured, i.e., one candidate codeword pair (w_(t),w_(r))corresponds to one measurement. In each measurement, the transmitter 100uses w_(t) as the Tx AWV set on the Tx RF phased array 105, and sends abaseband signal s with power P. The receiver 110 uses w_(r) as the RxAWV set on the Rx RF phased array 115, measures the received signal y,sends it to the processor 112 for calculation, and feeds back the resultto the transmitter 100. As shown in FIG. 7, specific steps are asfollows:

At S710, determine the Tx codeword w_(t) from the Tx codebook and Rxcodeword w_(r) from the Rx codebook;

At S720, the Tx controller 102 controls the beam controller 104 togenerate the Tx codeword (i.e., w_(t)), and set the weights of the RFphased array 105 (i.e., Tx AWV) with the generated codeword;

At S730, the Rx processor 112 controls the beam controller 114 togenerate the Rx codeword (i.e., w_(r)), and set the weights of the RFphased array 115 (i.e., Rx AWV) with the generated codeword;

At S740, the Tx controller 102 controls the baseband signal generator103 to generate the baseband signal s, and the RF phased array 105generates the transmitted signal S;

At S750, the RF phased array 115 receives the received signal S′. Afterconverting it into an RF signal, the RF phased array 115 transmits theRF signal to the baseband signal detector 113. The baseband signaldetector 113 detects and measures the received signal y.

At S760, the baseband signal detector 113 passes the received signal yto the processor 112 for calculation. The processor 112 determines theTx codeword w_(t) and the Rx codeword w_(r) for setting the Tx AWV andthe Rx AWV for the next measurement.

B. The Second Stage: Sparse Reconstruction

As we have estimated the virtual channel H_(fd), we have the followingrelation:

$\begin{matrix}{H = {{\sum\limits_{\ell = 1}^{L}{\lambda_{\ell}{a_{r}\left( \theta_{\ell} \right)}{a_{t}^{H}\left( \psi_{\ell} \right)}}} \approx {H_{fd}.}}} & (18)\end{matrix}$

To reconstruct the original channel H, we need to estimate λ_(l), θ_(l)and ψ_(l). Hence, we formulate the following problem:

$\begin{matrix}{{\underset{\lambda_{\ell},\theta_{\ell},\psi_{\ell}}{{minimize}\;}{{H_{fd} - {\sum\limits_{\ell = 1}^{L}{\lambda_{\ell}{a_{r}\left( \theta_{\ell} \right)}{a_{t}^{H}\left( \psi_{\ell} \right)}}}}}_{F}},} & (19)\end{matrix}$

Then, analogous to the pure CS approach, we sample the AoA and AoDdomain with a high resolution, i.e., an angle interval 2/(KN_(r)) at theRx and 2/(KN_(t)) at the Tx, where K is the over-sampling factor, and weobtain

$A_{r} = {{\left\lbrack {{a_{r}\left( {{- 1} + \frac{1}{{KN}_{r}}} \right)},{a_{r}\left( {{- 1} + \frac{3}{{KN}_{r}}} \right)},\ldots\mspace{14mu},{a_{r}\left( {{- 1} + \frac{{2{KN}_{r}} - 1}{{KN}_{r}}} \right)}} \right\rbrack\mspace{14mu}{and}\mspace{14mu} A_{t}} = {\left\lbrack {{a_{t}\left( {{- 1} + \frac{1}{{KN}_{t}}} \right)},{a_{t}\left( {{- 1} + \frac{3}{{KN}_{t}}} \right)},{\ldots\mspace{14mu}{a_{t}\left( {{- 1} + \frac{{2{KN}_{t}} - 1}{{KN}_{t}}} \right)}}} \right\rbrack.}}$This manipulation is applicable, but at the cost of a high computationalcomplexity. In fact, by exploiting the search results in Algorithm 1, wecan significantly reduce the number of the Rx and Tx candidate AWVs.Concretely, since the estimated AoA of the l-th MPC is

${{\hat{\theta}}_{\ell} = {{- 1} + \frac{{2n_{r\;\ell}} - 1}{N_{r}}}},$where n_(rl) is the index of the best Rx codeword for the l-th MPCobtained at the end of Step 2 of Algorithm 1, the uncertainty range ofthe l-th AoA should be

$\left\lbrack {{{\hat{\theta}}_{\ell} - \frac{2}{N_{r}}},{{\hat{\theta}}_{\ell} + \frac{2}{N_{r}}}} \right\rbrack,$which means that the candidate AoAs are the angle set obtained bysampling the angle range

$\left\lbrack {{{\hat{\theta}}_{\ell} - \frac{2}{N_{r}}},{{\hat{\theta}}_{\ell} + \frac{2}{N_{r}}}} \right\rbrack$with an interval 2/(KN_(r)). Consequently, the reduced Rx and Txcandidate AWVs are

$\begin{matrix}{{{\overset{\_}{A}}_{r} = \left\lbrack {\left\lbrack {a_{r}\left( {{\hat{\theta}}_{1} - \frac{2}{N_{r}} + \frac{2k}{{KN}_{r}}} \right)} \right\rbrack_{{k = 0},1,\;{\ldots\; 2K}},\left\lbrack {a_{r}\left( {{\hat{\theta}}_{2} - \frac{2}{N_{r}} + \frac{2k}{{KN}_{r}}} \right)} \right\rbrack_{{k = 0},1,\;{\ldots\mspace{11mu} 2K}},\left\lbrack {a_{r}\left( {{\hat{\theta}}_{L} - \frac{2}{N_{r}} + \frac{2k}{{KN}_{r}}} \right)} \right\rbrack_{{k = 0},1,\;{\ldots\mspace{11mu} 2K}}} \right\rbrack},} & (20) \\{and} & \; \\{{{\overset{\_}{A}}_{t} = \left\lbrack {\left\lbrack {a_{t}\left( {{\hat{\psi}}_{1} - \frac{2}{N_{t}} + \frac{2k}{{KN}_{t}}} \right)} \right\rbrack_{{k = 0},1,\;{\ldots\; 2K}},\left\lbrack {a_{t}\left( {{\hat{\psi}}_{2} - \frac{2}{N_{t}} + \frac{2k}{{KN}_{t}}} \right)} \right\rbrack_{{k = 0},1,\;{\ldots\mspace{11mu} 2K}},\left\lbrack {a_{t}\left( {{\hat{\psi}}_{L} - \frac{2}{N_{t}} + \frac{2k}{{KN}_{t}}} \right)} \right\rbrack_{{k = 0},1,\;\ldots\mspace{11mu},{2K}}} \right\rbrack},} & (21)\end{matrix}$respectively, where

${{\hat{\psi}}_{\ell} = {{- 1} + \frac{{2m_{t\;\ell}} - 1}{N_{t}}}},$where m_(tl) is the index of the best Tx codeword for the l-th MPCobtained at the end of Step 2 of Algorithm I. Then H can beapproximately expressed as H=Ā_(r)ΣĀ_(t) ^(H), where Σ is a sparsematrix with every column and every row thereof having at most onenonzero element and with the nonzero elements corresponding to thechannel coefficients λ_(l), i.e., ∥vec(Σ)∥₀=L. In a sequel,

$\begin{matrix}{{{H_{fd} - {\sum\limits_{\ell = 1}^{L}{\lambda_{\ell}{a_{r}\left( \theta_{\ell} \right)}{a_{t}\left( \psi_{\ell} \right)}^{H}}}}}_{F} = {{H_{fd} - {{\overset{\_}{A}}_{r}{\sum{{\overset{\_}{A}}_{t}^{H}{_{F}{= {{{{vec}\left( {H_{fd} - {{\overset{\_}{A}}_{r}{\sum{\overset{\_}{A}}_{t}^{H}}}} \right)}{_{2}{= {{{{vec}\left( H_{fd} \right)} - {{{vec}\left( {{\overset{\_}{A}}_{r}{\sum{\overset{\_}{A}}_{t}^{H}}} \right)}{_{2}{= {\quad{{{{vec}\left( H_{fd} \right)} - {\quad{\quad{\left( {{\overset{\_}{A}}_{t}^{*} \otimes {\overset{\_}{A}}_{r}} \right){{vec}(\sum)}{_{2}{= {{{{vec}\left( H_{fd} \right)} - {\overset{\_}{Q}{{vec}(\sum)}{_{2},}}}}}}}}}}}}}}}}}}}}}}}}}}}}} & (22)\end{matrix}$where ∥.∥_(F) represents Frobenius norm.

Hence, the problem (19) becomes

$\begin{matrix}\begin{matrix}{\underset{\lambda_{\ell},{\theta_{\ell}\psi_{\ell}}}{{minimize}\mspace{11mu}}{{{{vec}\left( H_{fd} \right)} - {\overset{\_}{Q}{{vec}(\sum)}_{2}}}}} \\{{subject}\mspace{20mu}{to}{\mspace{11mu}\;}{{{{vec}(\sum)}{_{0}{{= L},}}}}}\end{matrix} & (23)\end{matrix}$which is a standard sparse reconstruction problem. By using the resultsof the VMA stage, the size of the dictionary matrix Q of the sparsereconstruction problem can be greatly reduced, and thus the problem canbe efficiently solved by the classic orthogonal matching pursuit (OMP)method.

In practice, the number of MPCs (i.e., L) is not known a priori.Besides, in some cases, it is not necessary to estimate all of the MPCs.In such cases, the number of MPCs in the VMA-SR method of the presentapplication, in both of the two stages, is set to L=L_(d), the desirednumber of MPCs. For instance, if we want to realize a 2-streamtransmission, we only need to estimate L_(d)=2 MPCs, no matter how manyMPCs the channel really has.

Given a sufficiently large over-sampling factor K, it is possible to usethe VMA-SR method to resolve MPCs with very close AoAs and AoDs, wherethe AoA and AoD gaps can be smaller than 2/N_(r), and 2/N_(t),respectively. In the VMA stage, we actually search an MPC cluster ineach iteration, which can be either a single MPC or the summation ofmultiple adjacent MPCs with very close AoAs and AoDs. In the SR stage,we have implicitly assumed that there is only one MPC within eachsearched cluster in (23). If necessary, we can assume that there are κadjacent MPCs with very close AoAs and AoDs within each cluster, andthey can also be separately estimated by solving (23), with ∥vec(Σ)∥₀=κLinstead of ∥vec(Σ)∥₀=L. The value of κ usually runs from 2 to 4.

Since the sparse reconstruction stage does not need measurement, thetotal number of measurements of the VMA-SR method isT _(VMA-SR) =L(4^(S) ⁰ +2(log₂(N _(r))+log₂(N _(t))−2S ₀)+9)   (24)

Note that this is the training overhead for an analogbeamforming/combining structure. In the case of a hybrid structure,where parallel transmission of multiple-stream training sequences isavailable, the time cost will be further reduced. Simulation resultsshow that the VMA-SR method according to the present applicationachieves a superior tradeoff between estimation performance and trainingpenalty.

To make the method according to the present application applicable forboth analog and hybrid beamforming/combining devices with strictconstant-modulus constraint, we particularly design a codebook for thehierarchical search by using an enhanced sub-array scheme. And we needto design w(k,n) with beam widths 2/2^(k) in the k-th layer, fork=0,1,2, . . . , log₂ N. We obey the following procedures to computew(k,n):

Step 1: Separate w(k,1) into S_(k)=2^(┌(log) ² ^(N−k)/2┐) sub-arrays;thus each sub-array has N_(S)=N/S_(k) antennas.

Step 2: Set the AWVs of the S_(k) sub-arrays.

For w(k,1), the steering angle space between adjacent sub-arrays isΔ=2^(1−k)/S_(k), and the steering angles of the sub-arrays are

${\omega_{m} = {{- 1} + {\frac{{2m} - 1}{2}\Delta}}},{m = 1},2,\ldots\mspace{14mu},{S_{k}.}$The steering vector function a(N_(S),ω_(m)) is defined as

${a\left( {N_{s},\omega_{m}} \right)} = {{\frac{1}{\sqrt{N_{s}}}\left\lbrack {e^{j\;\pi\; 0\;\omega_{m}},e^{j\;\pi\; 1\;\omega_{m}},\ldots\mspace{14mu},e^{j\;\pi\;{({N_{s} - 1})}\;\omega_{m}}} \right\rbrack}^{T}.}$Then, for m=1,2, . . . S_(k), set

${\left\lbrack {w\left( {k,1} \right)} \right\rbrack_{{{{({m - 1})}N_{s}} + 1}:{mN}_{s}} = {\sqrt{\frac{N_{S}}{N}}e^{j\;\rho_{m}}{a\left( {N_{s},\omega_{m}} \right)}}},$where the co-phase ρ_(m)=−πm(N_(S)−1)Δ/2−πN_(S)m(m−1)Δ/2,

Step 3: After the first codeword in the k-th layer w(k,1) obtained, allthe other codewords in the k-th layer are found through rotating w(k,1)by

$\frac{{2n} - 2}{2^{k}},{n = 2},3,\ldots\mspace{14mu},2^{k},$respectively, i.e.,

${{w\left( {k,n} \right)} = {{w\left( {k,1} \right)}{^\circ}\sqrt{N}{a\left( {N,\frac{{2n} - 2}{2^{k}}} \right)}}},$where ° is the entry-wise product.

It is clear that there is no deactivation operation for all thecodewords. Thus, the codebook according to the present application doesnot need to turn off some antenna branches and thus increases themaximal total transmission power. FIG. 8 shows the Beam patterns of theenhanced sub-array scheme described above, where we can find that forthe 1st and the 3rd layer codewords, the enhanced sub-array scheme canachieve a significantly higher beam gain, due to no deactivationoperation. Meanwhile, we can find that for the enhanced sub-arrayscheme, the beam width of w(1,1) is indeed rowdily 2 tunes of that ofw(2,1), and 4 times of that of w(3,1), which are in accordance with thatin FIG. 3.

In this invention, we require that the number of elements of a uniformlinear array (ULA), i.e., N, be M^(P) for some positive integers M andp, which is because the proposed codebook design approach needs todivide the array or a sub-array into M smaller sub-arrays. For a ULAwith an arbitrary number of elements, the sub-array technology isinfeasible if N is not M to an integer power. Hence, the proposedcodebook design approach may not be extended to ULAs with an arbitrarynumber of antenna elements without further modification oraccommodation. There are two possible solutions in practice. One is toselect a ULA with N being M to an integer power when designing thesystem, which is reasonable because the beamforming method should beconsidered in system planning. The other one is to exploit the proposedcodebook design approach for beaming with M^(└ log) ^(M) ^(N┘) antennaswhile deactivating the other ones, where └.┘ is the floor integeroperation. Afterwards, further beam refinement can be launched with allthe antennas activated.

In the context of this invention, we have adopted a ULA model. Inpractice, it is more convenient to use a uniform planar array (UPA) inan minWave device, especially when the size of the device is small,because a UPA is more compact than a ULA and can save much area with thesame number of antennas. Thus, we generalize the hierarchical codebook,which is designed by applying the enhanced sub-array scheme to UPA. Infact, by exploiting the Kronecker product, a UPA codeword can beobtained based on two ULA codewords. We introduce it in detail asfollows.

Suppose the size of a UPA is N_(x)×N_(y), where N_(x) and N_(y) are thenumber of antennas along x and y axes, respectively, and they both areinteger powers of 2. Let w_(P)(k,n_(x),n_(y)) denote the n_(x) andn_(y)-th (along x and y axes, respectively) codeword in the k-th layer.Then we havew _(P)(k,n _(x) ,n _(y))=w _(x)(k,n _(x))⊗w _(y)(k,n _(y)),   (25)where ⊗ is the Kronecker product, w_(x)(k,n_(x)) is the n_(x)-thcodeword in the k-th layer of a ULA codebook with N_(x) antennas, whilew_(y)(k,n_(y)) is the n_(y)-th codeword in the k-th layer of a ULAcodebook with N_(y) antennas. w_(x)(k,n_(x)) and w_(y)(k,n_(y)) are ULAcodewords and can be computed according to the enhanced sub-arrayscheme.

Without loss of generality, we design a fully hierarchical UPA codebookby exploiting the approach shown in (25). We assume the size of the UPAis N×N, and thus there is also (log₂ N+1) layers in the codebook. In thek-th layer, k=0,1,2, . . . , log₂ N, there are 4^(k) codewords in total,which are {w_(P)(k,n_(x),n_(y))|n_(x)=1,2,3, . . . , 2^(k); n_(y)=1,2,3,. . . , 2^(k)}.

FIG. 9 shows the beam patterns of the codewords in the first layer of aUPA codebook, where the size of the UPA is 8×8 . It can be observed thatthere are 4¹ codewords, and the beam coverage of a UPA codeword is a2-dimensional angle domain, including the x and y-axes angel domains.The union of the beam coverage of the 4 codewords is roughly the whole2-dimensional angle domain. The sub-beams within the beam coverage ofeach UPA codeword are due to the sub-array technique.

FIGS. 10 and 11 show the effect of the over-sampling factor K on thedetection and mean squared error (MSE) performances of the VMA-SRapproach. As we can see, the detection performance is improved little byincreasing K when K≥2, while the MSE performance is consistentlyimproved when increasing K. However, increasing K will result in largerdictionary matrix Q as shown in (23), which increases the computationalcomplexity in the SR stage. In practice, a tradeoff between the MSEperformance and the computational complexity is necessary to adoptappropriate K.

What is claimed is:
 1. The method of channel estimation formillimeter-wave communication, comprising the steps of: providing amillimeter-wave transmitter (Tx) with N_(t) antennas; providing amillimeter-wave receiver (Rx) with N_(r) antennas; performing virtualmultipath acquisition (VMA) using a hierarchical search of multiplelayers to acquire virtual multipath components (MPCs) and acorresponding virtual channel H_(fd), wherein the hierarchical searchfor each layer comprises: causing the transmitter to transmit signalsbased on Tx codewords selected from a transmitter codebook, causing thereceiver to receive signals from the transmitter based on Rx codewordsselected from a receiver codebook, obtain measured values of thereceived signals, process the measured values of the received signals bya processor of the receiver, and to determine Tx codewords and. Rxcodewords for the next layer of the hierarchical search, and returningto the transmitter the indexes of the Tx codewords for the next layer,wherein the Tx codewords are used as transmitter antenna weight vectors(Tx AWVs) for shifting the phase of the signals transmitted by thetransmitter, and the Rx codewords are used as receiver antenna weightvectors (Rx AWVs) for shifting the phase of the signals received by thereceiver; and performing sparse reconstruction (SR) to reconstruct realMPCs and therefore original channel H from the virtual channel H _(fd)acquired in the VMA step.
 2. The method of channel estimation of claim1, wherein: the transmitter codebook and the receiver codebook for thehierarchical search are each a hierarchical codebook of (log₂ N+1)layers having 2^(k) codewords w(k,j), j=1,2, . . . , 2^(k), in the k-thlayer, where N=N_(r) for the receiver codebook and N=N_(t) for thetransmitter codebook, k=0,1,2, . . . , log₂ N; each codeword in the k-thlayer of the hierarchical codebook has S_(k) sub-arrays, each sub-arraycovering N_(S)=N/S _(k) antennas, where S_(k)=2^(┌(log) ² ^(N−k)/2┐) and┌.┐ denotes ceil integer operation; and the hierarchical codebook isconstructed according to the following steps: (a) for k0,1,2, . . . ,log₂ N, setting the first codeword in the k-th layer w(k,1 ) accordingto${\left\lbrack {w\left( {k,1} \right)} \right\rbrack_{{{{({m - 1})}N_{s}} + 1}:{mN}_{s}} = {\sqrt{\frac{N_{s}}{N}}e^{j\;\rho_{m}}{a\left( {N_{s},\omega_{m}} \right)}}},{m = 1},2,\ldots\mspace{14mu},S_{k},{where}$ρ_(m) = −π m(N_(s) − 1)Δ/2 − π N_(s)m(m − 1)Δ/2.${\Delta = {2^{1 - k}/S_{k}}},{{a\left( {N_{s},\omega_{m\;}} \right)} = {\frac{1}{\sqrt{N_{s}}}\left\lbrack {e^{j\;\pi\; 0\;\omega_{m}},e^{j\;\pi\; 1\;\omega_{m}},\ldots\mspace{14mu},e^{j\;\pi\;{({N_{s} - 1})}\;\omega_{m}}} \right\rbrack}^{T}},{and}$${\omega_{m} = {{- 1} + {\frac{{2m} - 1}{2}\Delta}}};$ (b) for k=1,2, .. . , log₂ N, setting other codewords in the k-th layer according to${{w\left( {k,n} \right)} = {{w\left( {k,1} \right)}{^\circ}\sqrt{N}{a\left( {N,\frac{{2n} - 2}{2^{k}}} \right)}}},{n = 2},3,\ldots\mspace{14mu},2^{k},$where ° is the entry-wise product.
 3. The method of channel estimationof claim 2, wherein the hierarchical search comprises the followingsteps: setting S_(t)=log₂ N_(t), S_(r)=log₂ N_(r), S=log₂ N, whereN=N_(r) if N_(r)≤N_(t), otherwise N=N_(r); setting initial layer indexS₀ and initializing H_(fd)=0; executing the following steps for eachl=1,2, . . . , L, where L is a predetermined number of real MPCs: (1)performing a search over all 2^(S) ⁰ ×2 ^(S) ⁰ Tx/Rx codeword pairs inthe S₀-th layer to find a best Tx/Rx codeword pair w_(t)(S₀,m_(t)) andw_(r)(S₀,n_(r)), for which the value ofy_(m)−w_(r)(S₀,n_(r))^(H)H_(fd)w_(t)(S₀,m_(t)) is the largest, wherew_(r) and w_(t) respectively denote the receiver codeword and thetransmitter codeword, y_(m) is the measured value of the received signalcorresponding to the Tx/Rx codeword pair w_(t)(S₀,m_(t)) andw_(r)(S₀,n_(r)); (2A) performing a search for a best Tx/Rx codeword pairfor each layer from the (S₀+1)-th layer to the S-th layer, wherein thebest Tx/Rx codeword pair in the s-th layer is acquired by first finding(a,b) in the following problem:${{y\left( {m,n} \right)} = {{y_{m}\left( {m,n} \right)} - {{w_{r}\left( {s,{{2\left( {n_{r} - 1} \right)} + n}} \right)}^{H}H_{fd}{w_{t}\left( {s,{{2\left( {m_{t} - 1} \right)} + m}} \right)}}}},\mspace{20mu}{\left( {a,b} \right) = {\underset{({m,n})}{\arg\;\max}{{y\left( {m,n} \right)}}}},$where m_(t) and n_(r) are respectively the indexes of the best Tx/Rxcodeword pair acquired from the immediate preceding layer, m and n arein range of {1,2}, y_(m)(m,n) is the measured value of the correspondingreceived signal, and then updating the best Tx/Rx codeword indexes m_(t)and n_(r) according to:m _(t)=2(m _(t)−1)+a,n _(r)=2(n _(r)−1)+b (2B ) if S_(r)>S_(t), performing a search for bestTx/Rx codeword pair for each layer from the (S+1)-th layer to theS_(r)-th layer, wherein the best Tx/Rx codeword pair in the s-th layeris acquired by first finding b in the following problem:${{y^{\prime}(n)} = {{y_{m}^{\prime}(m)} - {{w_{r}\left( {s,{{2\left( {n_{r} - 1} \right)} + n}} \right)}^{H}H_{fd}{w_{t}\left( {S_{t},m_{t}} \right)}}}},{a = {\underset{n}{\arg\;\max}{{y^{\prime}(m)}}}},$where m_(t) and n_(r) are respectively the indexes of the best Tx/Rxcodeword pair acquired from the immediate preceding layer, n is in rangeof {1,2}, y′_(m)(n) is the measured value of the corresponding receivedsignal, and then updating the best Tx/Rx codeword index n_(r) accordingto:n _(r)=2(n _(r)−1)+b; or if S_(t)>S_(r), performing a search for a bestTx/Rx codeword pair for each layer from the (S+1)-th layer to theS_(t)-th layer, wherein the best Tx/Rx codeword pair in the s-th layeris acquired by first finding a in the following problem:${{y^{\prime}(m)} = {{y_{m}^{\prime}(m)} - {{w_{r}\left( {S_{r},n_{r}} \right)}^{H}H_{fd}{w_{t}\left( {s,{{2\left( {m_{t} - 1} \right)} + m}} \right)}}}},{a = {\underset{m}{\arg\;\max}{{y^{\prime}(m)}}}},$where m_(t) and n_(r) are respectively the indexes of the best Tx/Rxcodeword pair acquired from the immediate preceding layer, m is in rangeof {1,2, y′_(m)(m) is the measured value of the corresponding receivedsignal, and then updating the best Tx/Rx codeword index m_(t) accordingto:m _(t)=2(m _(t)−1)+a, whereby the best Tx/Rx codeword pair w_(t)(S_(r),m_(t)) and w_(r)(S_(r), n_(r)) for the l-th MPC is acquired; (3)Measuring received signals that correspond to codeword pairsw_(r)(S_(r),n_(r)+n) and w_(t)(S_(t),m_(t)+m), where m and n are inrange of {−1,0,1}, to obtain nine virtual MPCs for the l-th real MPC,and updating the virtual channel H_(fd) according toH _(fd) =H _(fd) +y _(m)(m,n)w _(r)(S _(r) ,n _(r) +n)w _(t)(S _(t) ,m_(t) +m)^(H) for all permutations of m and n, where y_(m)(m,n) is themeasured value of the corresponding received signal.
 4. The method ofchannel estimation of claim 3, wherein the SR step comprises: (a)calculating reduced Rx candidate antenna weight vectors Ā_(r) andreduced Tx candidate antenna weight vectors Ā_(t) according to${{\overset{\_}{A}}_{r} = \left\lbrack {\left\lbrack {a_{r}\left( {{\hat{\theta}}_{1} - \frac{2}{N_{r}} + \frac{2k}{{KN}_{r}}} \right)} \right\rbrack_{{k = 0},1,\mspace{11mu}\ldots\mspace{11mu},{2K}},\left\lbrack {a_{r}\left( {{\hat{\theta}}_{2} - \frac{2}{N_{r}} + \frac{2k}{{KN}_{r}}} \right)} \right\rbrack_{{k = 0},1,\mspace{11mu}\ldots\mspace{11mu},{2K}},{\ldots\mspace{14mu}\left\lbrack {a_{r}\left( {{\hat{\theta}}_{L} - \frac{2}{N_{r}} + \frac{2k}{{KN}_{r}}} \right)} \right\rbrack}_{{k = 0},1,\mspace{11mu}\ldots\mspace{11mu},{2K}}} \right\rbrack},{and}$${{\overset{\_}{A}}_{t} = \left\lbrack {\left\lbrack {a_{t}\left( {{\hat{\psi}}_{1} - \frac{2}{N_{t}} + \frac{2k}{{KN}_{t}}} \right)} \right\rbrack_{{k = 0},1,\mspace{11mu}\ldots\mspace{11mu},{2K}},\left\lbrack {a_{t}\left( {{\hat{\psi}}_{2} - \frac{2}{N_{t}} + \frac{2k}{{KN}_{t}}} \right)} \right\rbrack_{{k = 0},1,\mspace{11mu}\ldots\mspace{11mu},{2K}},{\ldots\mspace{14mu}\left\lbrack {a_{t}\left( {{\hat{\psi}}_{L} - \frac{2}{N_{t}} + \frac{2k}{{KN}_{t}}} \right)} \right\rbrack}_{{k = 0},1,\mspace{11mu}\ldots\mspace{11mu},{2K}}} \right\rbrack},\mspace{20mu}{where}$$\mspace{20mu}{{{\hat{\theta}}_{\ell} = {{- 1} + \frac{{2\; n_{r\;\ell}} - 1}{N_{r}}}},{{\hat{\psi}}_{\ell} = {{- 1} + \frac{{2\; m_{t\;\ell}} - 1}{N_{t}}}},{\ell = 1},2,\ldots\mspace{14mu},L,}$m_(tl) and n_(rl) respectively denote the indexes of the best Tx/Rxcodeword pair acquired for the l-th MPC,${{a_{r}(\theta)} = {\frac{1}{\sqrt{N_{r}}}\left\lbrack {e^{j\;\pi\; 0\;\theta},e^{j\;\pi\; 1\;\theta},\ldots\mspace{14mu},e^{j\;\pi\;{({N_{t} - 1})}\theta}} \right\rbrack}^{T}},{{a_{t}(\psi)} = {\frac{1}{\sqrt{N_{t}}}\left\lbrack {e^{j\;\pi\; 0\psi},e^{j\;\pi\; 1\psi},\ldots\mspace{14mu},e^{j\;\pi\;{({N_{t} - 1})}\psi}} \right\rbrack}^{T}},$K is an over-sampling factor; (b) solving$\underset{\lambda_{\ell},\theta_{L},\psi_{\ell}}{minimize}{{{{vec}\left( H_{fd} \right)} - {\left( {\overset{\_}{A_{t}^{*}} \otimes \overset{\_}{A_{r}}} \right){{vec}(\Sigma)}}}}_{2}$subject  to  vec(Σ)₀ = L, where ⊗ is the Kronecker product, thesuperscript * denotes conjugate, to obtain values of channelcoefficients λ_(t), angles of arrival θ_(t) and angles of departureψ_(l); and (c) calculating channel matrix H byH=Ā_(r)ΣĀ_(t) ^(H), where Σ is a sparse matrix with every column andevery row thereof having at most one nonzero element and with thenonzero elements corresponding to the channel coefficients λ_(l), andthe superscript H denotes conjugate transpose.
 5. The method of channelestimation of claim 4, wherein an orthogonal matching pursuit (OMP)algorithm is used to solve the problem in step (b).
 6. The method ofchannel estimation of claim 1, wherein during the VMA step four virtualMPCs are acquired for each real MPC.
 7. The method of channel estimationof claim 4, wherein the problem in step (b) is solved subject tovec(Σ)∥₀=κL instead of vec(Σ)∥₀=L, assuming there are κ adjacent MPCswith very close angles of arrival (AoAs) and angles of departure (AoDs)within each cluster.
 8. The method of channel estimation of claim 1,wherein the transmitter codebook and the receiver codebook are each auniform planar array (UPA) codebook based on two uniform linear array(ULA) codebooks.
 9. The method of channel estimation of claim 8, whereinthe UPA codebook has N_(x) and N_(y) antennas along x and y axes,respectively, both N_(x) and N_(y) being integer powers of 2, and then_(x) and n_(y)-th (along x and y axes, respectively) codeword in thek-th layer of the UPA codebook, denoted as w_(P)(k,n_(x),n_(y)) isexpressed asw _(P)(k,n _(x) ,n _(y))=w _(x)(k,n _(x))⊗w _(y)(k,n _(y)), where ⊗ isthe Kronecker product, w_(x)(k,n_(x)) is the n_(x)-th codeword in thek-th layer of a ULA codebook with N_(x) antennas, while w_(y)(k,n_(y))is the n_(y)-th codeword in the k-th layer of a ULA codebook with N_(y)antennas.
 10. The method of channel estimation of claim 1, wherein thetransmitter includes a digital baseband and an RF phased array, the RFphased array including an RF chain and N_(t) transmitting antennabranches each having a phase shifter connected to the RF chain, a poweramplifier connected to the phase shifter, and one of said N_(t) antennasconnected to the power amplifier; and the receiver includes an RF phasedarray and a digital baseband, the RF phased array including an RF chain,an adder having an output end connected to the RF chain, and N_(r)receiving antenna branches each having one of said N_(r) antennas, a lownoise amplifier connected to the antenna, a phase shifter connectedbetween the low noise amplifier and an input end of the adder.
 11. Themethod of channel estimation of claim 10, wherein the digital basebandof the receiver comprises a baseband signal detector, a beam controller,and said processor of the receiver, wherein the processor controls thebaseband signal detector to detect the received signal and controls thebeam controller to generate an Rx codeword for the RF phased array ofthe receiver.
 12. The method of channel estimation of claim 10, whereinthe digital baseband of the transmitter comprises a controller, abaseband signal generator, and a beam controller, wherein the controllercontrols the baseband signal generator to generate a baseband signal andcontrols the beam controller to generate a Tx codeword for the RF phasedarray of the transmitter.
 13. The method of channel estimation of claim1, wherein the processor of the receiver is a computer configured withsoftware and memory for processing the measured values of receivedsignals.
 14. The method of channel estimation of claim 13, wherein theSR step is performed by the computer configured with software and memoryfor performing the SR step.
 15. The codebook for the hierarchical searchin the method of channel estimation of claim 1, wherein: the codebook isa hierarchical codebook of (log₂ N+1) layers having 2^(k) codewords w(k,j), j=1,2, . . . , 2^(k), in the k-th layer, where N=N_(r) for thereceiver codebook and N=N_(t) for the transmitter codebook, k=0,1,2, . .. , log₂ N; each codeword in the k-th layer of the hierarchical codebookhas S_(k) sub-arrays, each sub-array covering N_(S)=N/S_(k) antennas,where S_(k)=2^(┌(log) ² ^(N−k)/2┐) and ┌.┐ denotes coil integeroperation; and the hierarchical codebook is constructed according to thefollowing steps: (a) for k=0,1,2, . . . , log₂ N, setting the firstcodeword in the k-th layer w(k,1) according to${\left\lbrack {w\left( {k,1} \right)} \right\rbrack_{{{{({m - 1})}N_{s}} + 1}:{mN}_{s}} = {\sqrt{\frac{N_{s}}{N}}e^{j\;\rho_{m}}{a\left( {N_{s},\omega_{m}} \right)}}},{m = 1},2,\ldots\mspace{14mu},S_{k},{where}$ρ_(m) = −π m(N_(s) − 1)Δ/2 − π N_(s)m(m − 1)Δ/2.${\Delta = {2^{1 - k}/S_{k}}},{{a\left( {N_{s},\omega_{m\;}} \right)} = {\frac{1}{\sqrt{N_{s}}}\left\lbrack {e^{j\;\pi\; 0\;\omega_{m}},e^{j\;\pi\; 1\;\omega_{m}},\ldots\mspace{14mu},e^{j\;\pi\;{({N_{s} - 1})}\;\omega_{m}}} \right\rbrack}^{T}},{and}$${\omega_{m} = {{- 1} + {\frac{{2m} - 1}{2}\Delta}}};$ (b) for k=1,2, .. . , log₂ N, setting other codewords in the k-th layer according to${{w\left( {k,n} \right)} = {{w\left( {k,1} \right)}{^\circ}\sqrt{N}{a\left( {N,\frac{{2n} - 2}{2^{k}}} \right)}}},{n = 2},3,\ldots\mspace{14mu},2^{k},$where ° is the entry-wise product.